<html>
<head><meta charset="utf-8"><title>REPL · general · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/index.html">general</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html">REPL</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="178305385"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178305385" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178305385">(Oct 16 2019 at 16:28)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> design doc drafted. :-)</p>



<a name="178305386"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178305386" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178305386">(Oct 16 2019 at 16:28)</a>:</h4>
<p><a href="https://hackmd.io/@alexreg/rustc-repl-modifications-design-doc" target="_blank" title="https://hackmd.io/@alexreg/rustc-repl-modifications-design-doc">https://hackmd.io/@alexreg/rustc-repl-modifications-design-doc</a></p>



<a name="178305402"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178305402" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178305402">(Oct 16 2019 at 16:28)</a>:</h4>
<p>written it in the first person, because I thought that made sense.</p>



<a name="178305410"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178305410" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178305410">(Oct 16 2019 at 16:29)</a>:</h4>
<p>hopefully it has a lot of the sort of stuff you wanted anyway.</p>



<a name="178305711"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178305711" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178305711">(Oct 16 2019 at 16:32)</a>:</h4>
<p>(you should be able to comment or edit BTW)</p>



<a name="178306212"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178306212" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> davidtwco <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178306212">(Oct 16 2019 at 16:39)</a>:</h4>
<p>Perhaps submit this as a <a href="https://rust-lang.github.io/compiler-team/procedures/steering-meeting/#adding-a-proposal" target="_blank" title="https://rust-lang.github.io/compiler-team/procedures/steering-meeting/#adding-a-proposal">design meeting proposal</a> for discussion?</p>



<a name="178319103"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319103" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319103">(Oct 16 2019 at 19:04)</a>:</h4>
<p>Fair point, which we considered, though <span class="user-mention" data-user-id="116009">@nikomatsakis</span> and <span class="user-mention" data-user-id="116122">@simulacrum</span> and I chatted last week, and the current idea is to basically FCP this and only do a design meeting if there are substantial issues. :-)</p>



<a name="178319350"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319350" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319350">(Oct 16 2019 at 19:08)</a>:</h4>
<p><span class="user-mention" data-user-id="124069">@Alexander Regueiro</span> I'll create a "to do" item to review this in more depth -- first person seems fine though!</p>



<a name="178319420"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319420" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319420">(Oct 16 2019 at 19:08)</a>:</h4>
<p>hmm, skimmed briefly</p>



<a name="178319421"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319421" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319421">(Oct 16 2019 at 19:08)</a>:</h4>
<p>whta I think I'd like to see a bit of is</p>



<a name="178319430"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319430" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319430">(Oct 16 2019 at 19:08)</a>:</h4>
<p>what you think the "big picture" is</p>



<a name="178319434"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319434" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319434">(Oct 16 2019 at 19:08)</a>:</h4>
<p>like, maybe walk through how the repl would work ?</p>



<a name="178319451"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319451" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319451">(Oct 16 2019 at 19:09)</a>:</h4>
<p>I am imagining something like this:</p>



<a name="178319466"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319466" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319466">(Oct 16 2019 at 19:09)</a>:</h4>
<ul>
<li>the repl can create a Session -- this same Session will be used repeatedly (true? I don't know)</li>
</ul>



<a name="178319477"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319477" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319477">(Oct 16 2019 at 19:09)</a>:</h4>
<ul>
<li>user types first bit of code. we compile it and run it (or something)</li>
</ul>



<a name="178319539"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319539" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319539">(Oct 16 2019 at 19:10)</a>:</h4>
<ul>
<li>user types more code -- what do we do now? we need to use these pre-parsed user body options and other things, but I don't quite know how that is meant to fit together</li>
</ul>



<a name="178319554"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319554" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319554">(Oct 16 2019 at 19:10)</a>:</h4>
<p>cc <span class="user-mention" data-user-id="124069">@Alexander Regueiro</span> <span aria-label="point up" class="emoji emoji-1f446" role="img" title="point up">:point_up:</span></p>



<a name="178319566"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319566" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319566">(Oct 16 2019 at 19:10)</a>:</h4>
<p>ah right</p>



<a name="178319584"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319584" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319584">(Oct 16 2019 at 19:11)</a>:</h4>
<p>so you want more about the mechanics of the actual REPL (even if that's outside rustc), eh? <span class="user-mention" data-user-id="116009">@nikomatsakis</span></p>



<a name="178319812"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319812" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319812">(Oct 16 2019 at 19:14)</a>:</h4>
<p>yeah -- I mean I don't want to know too many details, but I want to get the "forest" and not just the "trees"</p>



<a name="178319860"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178319860" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178319860">(Oct 16 2019 at 19:15)</a>:</h4>
<p>that would help to understand <em>why</em> the changes are needed, not just <em>what</em> they are</p>



<a name="178320329"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178320329" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178320329">(Oct 16 2019 at 19:21)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> well the second section talks about the actual changes and why they're needed, to be fair.</p>



<a name="178320335"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178320335" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178320335">(Oct 16 2019 at 19:21)</a>:</h4>
<p>but I can definitely appreciate wanting a higher-level picture too</p>



<a name="178320345"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178320345" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178320345">(Oct 16 2019 at 19:21)</a>:</h4>
<p>so I'll add a section before that, and ping you again when it's done</p>



<a name="178336651"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178336651" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178336651">(Oct 16 2019 at 23:28)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> (and others)... updated the doc with a general overview of how the REPL works. hope that helps.</p>



<a name="178336653"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178336653" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178336653">(Oct 16 2019 at 23:29)</a>:</h4>
<p>feel free to edit it or leave notes now!</p>



<a name="178336662"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178336662" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178336662">(Oct 16 2019 at 23:29)</a>:</h4>
<p>or just ask me questions, and we can update it together.</p>



<a name="178356442"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178356442" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Laurențiu <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178356442">(Oct 17 2019 at 07:16)</a>:</h4>
<p>Maybe it's a stupid question, but how will external crates fit in the story?</p>



<a name="178401425"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178401425" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178401425">(Oct 17 2019 at 17:11)</a>:</h4>
<p><span class="user-mention" data-user-id="203546">@Laurențiu Nicola</span> Not stupid at all. Basically because it’s built on miri, the capabilities will be there to use external crates without much extra work... but I haven’t explicitly added support for it yet.</p>



<a name="178401511"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178401511" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Laurențiu <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178401511">(Oct 17 2019 at 17:12)</a>:</h4>
<p>But you mention a fs cache for incremental compilation. Would that be used for external crates too? I wish we had a per-user build cache (: (in cargo, not only for the REPL)</p>



<a name="178404640"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178404640" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178404640">(Oct 17 2019 at 17:50)</a>:</h4>
<p><span class="user-mention" data-user-id="203546">@Laurențiu Nicola</span> Incr. comp. already uses the FS right now. I'm providing an alternative for REPL use (at least mainly).</p>



<a name="178404817"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178404817" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Laurențiu <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178404817">(Oct 17 2019 at 17:52)</a>:</h4>
<p>Got it, but is it a good idea? What if I <code>extern crate serde;</code> in the REPL, will all of it get cached to RAM? Or is extern crate support in the REPL very far away?</p>



<a name="178404855"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178404855" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178404855">(Oct 17 2019 at 17:53)</a>:</h4>
<p>It's not there yet, but not super far away. It would get cached in RAM though at present, yes.</p>



<a name="178404907"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178404907" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178404907">(Oct 17 2019 at 17:53)</a>:</h4>
<p>a per-user build cache would be useful yes. have you talked with others about it?</p>



<a name="178404984"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178404984" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Laurențiu <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178404984">(Oct 17 2019 at 17:54)</a>:</h4>
<p>No, but it's a long-standing request, I think, e.g. <a href="https://github.com/rust-lang/cargo/issues/5931" target="_blank" title="https://github.com/rust-lang/cargo/issues/5931">https://github.com/rust-lang/cargo/issues/5931</a></p>



<a name="178405072"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178405072" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178405072">(Oct 17 2019 at 17:55)</a>:</h4>
<p>it kind-of already exists for things that are cargo-installed</p>



<a name="178405086"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178405086" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178405086">(Oct 17 2019 at 17:55)</a>:</h4>
<p>so that would "just" need to be extended</p>



<a name="178405223"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178405223" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178405223">(Oct 17 2019 at 17:57)</a>:</h4>
<p>also, ideally when it comes to incr. comp., we could allow for separate "backends" (on-disk vs. in-memory) for the local crate and extern crates.</p>



<a name="178405231"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178405231" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178405231">(Oct 17 2019 at 17:57)</a>:</h4>
<p>but that's not a big concern right now</p>



<a name="178405284"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178405284" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Laurențiu <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178405284">(Oct 17 2019 at 17:58)</a>:</h4>
<p>Oh course, it's just something to think about before shipping it</p>



<a name="178406562"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178406562" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178406562">(Oct 17 2019 at 18:12)</a>:</h4>
<p>it's very much a WIP</p>



<a name="178406583"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178406583" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178406583">(Oct 17 2019 at 18:12)</a>:</h4>
<p>so there's no "shipping" per se. only an alpha release.</p>



<a name="178406589"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178406589" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178406589">(Oct 17 2019 at 18:13)</a>:</h4>
<p>which will hopefully come in the next month</p>



<a name="178406599"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178406599" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178406599">(Oct 17 2019 at 18:13)</a>:</h4>
<p>just needs the rustc bits integrated now</p>



<a name="178453281"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178453281" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> gnzlbg <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178453281">(Oct 18 2019 at 08:21)</a>:</h4>
<p>I can't wait to try it out :)</p>



<a name="178455922"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178455922" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> DPC <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178455922">(Oct 18 2019 at 09:03)</a>:</h4>
<p>is this thread the discussion for PR <a href="https://github.com/rust-lang/rust/issues/64648" target="_blank" title="https://github.com/rust-lang/rust/issues/64648">#64648</a>?</p>



<a name="178458410"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178458410" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178458410">(Oct 18 2019 at 09:38)</a>:</h4>
<p>Side note regarding REPLs: based on some discussions at a past RustConf, I think there are ways to improve type inference specifically for a REPL, to handle cases that would otherwise require early type signatures.</p>



<a name="178482107"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178482107" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178482107">(Oct 18 2019 at 15:01)</a>:</h4>
<p><span class="user-mention" data-user-id="120823">@DPC</span> yep and future PRs too, which I can create when everything gets approved.</p>



<a name="178482227"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178482227" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178482227">(Oct 18 2019 at 15:02)</a>:</h4>
<p><span class="user-mention" data-user-id="239881">@Josh Triplett</span> Quite possibly yes. I suspect we’ll get around discuss this after the initial release.</p>



<a name="178669955"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178669955" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178669955">(Oct 21 2019 at 16:04)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> Let me know when you’ve had time to review things.</p>



<a name="178938574"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178938574" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178938574">(Oct 24 2019 at 10:26)</a>:</h4>
<p><span class="user-mention" data-user-id="124069">@Alexander Regueiro</span> btw, I'm skimming the doc now in between making breakfast :) the new section helps a lot, thanks</p>



<a name="178956844"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/178956844" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#178956844">(Oct 24 2019 at 14:22)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> Cool, glad to hear.</p>



<a name="179058398"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/179058398" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#179058398">(Oct 25 2019 at 15:12)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> got one point I want to discuss about that design doc, but apart from that, would like to FCP it soon really</p>



<a name="179254142"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/179254142" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#179254142">(Oct 28 2019 at 17:25)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> sorry to bother you again... got a few mins today?</p>



<a name="179699106"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/179699106" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#179699106">(Nov 02 2019 at 11:42)</a>:</h4>
<p>There's an issue on the compiler-team repo now, for anyone following: <a href="https://github.com/rust-lang/compiler-team/issues/213" target="_blank" title="https://github.com/rust-lang/compiler-team/issues/213">https://github.com/rust-lang/compiler-team/issues/213</a></p>



<a name="180162012"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180162012" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180162012">(Nov 07 2019 at 18:49)</a>:</h4>
<p><span class="user-mention" data-user-id="124069">@Alexander Regueiro</span> Hm, so I expected a few more of the bullets to be non-essential</p>



<a name="180162026"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180162026" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180162026">(Nov 07 2019 at 18:49)</a>:</h4>
<p>in particular e.g. "Added an interface for injecting a pre-parsed “user body” into the parsing pipeline. "</p>



<a name="180162063"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180162063" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180162063">(Nov 07 2019 at 18:50)</a>:</h4>
<p>since that's presumably nothing more than a performance optimization?</p>



<a name="180162106"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180162106" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180162106">(Nov 07 2019 at 18:50)</a>:</h4>
<p>I can't imagine parsing being that slow...</p>



<a name="180170274"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180170274" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180170274">(Nov 07 2019 at 20:07)</a>:</h4>
<p>No, it’s necessary.</p>



<a name="180170295"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180170295" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180170295">(Nov 07 2019 at 20:07)</a>:</h4>
<p>So that the user body be injected at the right point.</p>



<a name="180174851"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180174851" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180174851">(Nov 07 2019 at 20:54)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span></p>



<a name="180175270"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180175270" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180175270">(Nov 07 2019 at 20:59)</a>:</h4>
<p>Hm</p>



<a name="180175345"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180175345" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180175345">(Nov 07 2019 at 21:00)</a>:</h4>
<p>But you don't need the preparsing logic</p>



<a name="180175372"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180175372" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180175372">(Nov 07 2019 at 21:00)</a>:</h4>
<p>Right?</p>



<a name="180175399"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180175399" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180175399">(Nov 07 2019 at 21:00)</a>:</h4>
<p>Like, you are already modifying the AST to insert the attribute</p>



<a name="180175429"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180175429" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180175429">(Nov 07 2019 at 21:01)</a>:</h4>
<p>Why can't you... insert the body instead?</p>



<a name="180176228"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180176228" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180176228">(Nov 07 2019 at 21:09)</a>:</h4>
<p>Or, I guess, to clarify, you'd still perhaps pre parse - but the compiler wouldn't need to know</p>



<a name="180181435"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181435" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181435">(Nov 07 2019 at 22:05)</a>:</h4>
<p>Huh?</p>



<a name="180181446"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181446" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181446">(Nov 07 2019 at 22:05)</a>:</h4>
<p>Well...</p>



<a name="180181467"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181467" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181467">(Nov 07 2019 at 22:05)</a>:</h4>
<p>well, possibly</p>



<a name="180181518"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181518" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181518">(Nov 07 2019 at 22:06)</a>:</h4>
<p>there would still need to be some sort of small change to the parser though</p>



<a name="180181523"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181523" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181523">(Nov 07 2019 at 22:06)</a>:</h4>
<p>to allow 'hooks'</p>



<a name="180181559"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181559" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181559">(Nov 07 2019 at 22:06)</a>:</h4>
<p>Hm, I would expect you could grab the ast::Crate (I assume you have a custom driver?) and modify that</p>



<a name="180181566"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181566" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181566">(Nov 07 2019 at 22:06)</a>:</h4>
<p>yes I used to do that</p>



<a name="180181590"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181590" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181590">(Nov 07 2019 at 22:07)</a>:</h4>
<p>but it's ugly as hell. you have to effectively "hard code" the path in the AST to the user fn body</p>



<a name="180181609"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181609" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181609">(Nov 07 2019 at 22:07)</a>:</h4>
<p>you can't use a <code>Visitor</code>, because that's non-mutable</p>



<a name="180181617"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181617" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181617">(Nov 07 2019 at 22:07)</a>:</h4>
<p>hm, we definitely have a way to modify the AST</p>



<a name="180181660"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181660" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181660">(Nov 07 2019 at 22:08)</a>:</h4>
<p><a href="https://github.com/Mark-Simulacrum/rust/blob/stage0-step/src/libsyntax/mut_visit.rs" target="_blank" title="https://github.com/Mark-Simulacrum/rust/blob/stage0-step/src/libsyntax/mut_visit.rs">https://github.com/Mark-Simulacrum/rust/blob/stage0-step/src/libsyntax/mut_visit.rs</a></p>



<a name="180181701"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181701" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181701">(Nov 07 2019 at 22:08)</a>:</h4>
<p>yes but it's either a) in a local fashion, b) via <code>MutVisitor</code> which can't be used here (I tried and it just doesn't fit the bill)</p>



<a name="180181702"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181702" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181702">(Nov 07 2019 at 22:08)</a>:</h4>
<p>er, ignore the branch</p>



<a name="180181730"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181730" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181730">(Nov 07 2019 at 22:08)</a>:</h4>
<p>yeah that has a weird API, that works around "mapping"</p>



<a name="180181738"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181738" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181738">(Nov 07 2019 at 22:08)</a>:</h4>
<p>rather than in-place modification</p>



<a name="180181748"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181748" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181748">(Nov 07 2019 at 22:08)</a>:</h4>
<p>not quite what we want</p>



<a name="180181758"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181758" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181758">(Nov 07 2019 at 22:08)</a>:</h4>
<p>well, you don't really care, in theory?</p>



<a name="180181773"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181773" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181773">(Nov 07 2019 at 22:08)</a>:</h4>
<p>maybe I should take a look at your repo or something</p>



<a name="180181805"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181805" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181805">(Nov 07 2019 at 22:09)</a>:</h4>
<p>I feel like I'm surprised by decisions you've made and there's probably good reasons I'm just not seeing :)</p>



<a name="180181948"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180181948" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180181948">(Nov 07 2019 at 22:10)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> basically I played around with a lot of these things, and the obvious choices were just not feasible (or had a major performance hit).</p>



<a name="180182030"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180182030" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180182030">(Nov 07 2019 at 22:11)</a>:</h4>
<p>so that's pretty surprising to me, to be honest, just because e.g. Serde does this "item insertion" and such all the time</p>



<a name="180182031"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180182031" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180182031">(Nov 07 2019 at 22:11)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> the best I could envisage here is pre-parsing the whole thing, but adding a <code>macro_hook</code> fn field to the <code>Parser</code> struct or such, so that when pre-parsing is done, this hook is used (but rustc itself doesn't use any hooks).</p>



<a name="180182053"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180182053" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180182053">(Nov 07 2019 at 22:11)</a>:</h4>
<p>anyway, would you be opposed to me trying to put up a PR or two or so?</p>



<a name="180182147"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180182147" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180182147">(Nov 07 2019 at 22:12)</a>:</h4>
<p>ah, I guess you've not published it yet</p>



<a name="180182199"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180182199" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180182199">(Nov 07 2019 at 22:12)</a>:</h4>
<p>I'd be happy to spend some time trying to realize my thoughts are not going to work, plus I'd love to play around with it a bit :)</p>



<a name="180185740"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180185740" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180185740">(Nov 07 2019 at 22:51)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> of course not :-)</p>



<a name="180185805"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180185805" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180185805">(Nov 07 2019 at 22:52)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> not put up the REPL yet, no, though my rustc fork is up (see the PR you reviewed, initial comment)</p>



<a name="180185819"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180185819" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180185819">(Nov 07 2019 at 22:52)</a>:</h4>
<p>yeah I suspect the REPL repo would be more helpful</p>



<a name="180186558"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180186558" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180186558">(Nov 07 2019 at 23:02)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> I haven't compiled it against my rustc build for a while now... it should still work in theory. have a start whenever you like, and I'll see what I can sort out with that soon.</p>



<a name="180186561"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180186561" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180186561">(Nov 07 2019 at 23:02)</a>:</h4>
<p>(feel free to ping/remind me)</p>



<a name="180187546"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180187546" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180187546">(Nov 07 2019 at 23:17)</a>:</h4>
<p><span class="user-mention" data-user-id="124069">@Alexander Regueiro</span> Can you share the repo with me in some way? I don't think I see anything in email</p>



<a name="180187777"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180187777" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180187777">(Nov 07 2019 at 23:20)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> Okay, pushed to GH and invited you.</p>



<a name="180187796"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180187796" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180187796">(Nov 07 2019 at 23:20)</a>:</h4>
<p>Thanks! Will take a look soon.</p>



<a name="180187813"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180187813" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180187813">(Nov 07 2019 at 23:21)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> Note that it's missing the UI still (just has some dummy input "lines" or eval sessions, but it should be very straightforward)</p>



<a name="180187833"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180187833" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180187833">(Nov 07 2019 at 23:21)</a>:</h4>
<p>adding the UI on top of this is a routine job, though will take a bit of time. :-) nothing to worry about regardlss.</p>



<a name="180187836"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180187836" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180187836">(Nov 07 2019 at 23:21)</a>:</h4>
<p>sure</p>



<a name="180242419"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180242419" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180242419">(Nov 08 2019 at 15:54)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> Let me know if you have any questions BTW</p>



<a name="180369181"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180369181" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180369181">(Nov 10 2019 at 16:10)</a>:</h4>
<p>Okay -- I spent some time trying to figure out what all is going on, though wasn't able to get super far as compiling either of the two isn't quite easy (i.e., the rustc branch seems to not be quite in sync with the repl repo) -- and neither seems to be up to date with "latest rustc."</p>
<p>From what I can tell without compiling, though, I think I'm better understanding the primitives that you want to add, though I'm not yet quite clear on how they all fit together....</p>
<p>It does feel like before we move forward on review into landing PRs into the compiler it'd be good to make sure what we land is actually good enough to support the REPL. But I personally feel somewhat more on board to make this happen then I did before looking at the components.</p>



<a name="180375881"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180375881" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180375881">(Nov 10 2019 at 19:20)</a>:</h4>
<p><span class="user-mention" data-user-id="124069">@Alexander Regueiro</span> one other thought I had -- it'd be great to put up all the modifications you want to land (basically what's necessary to compile the repl) and <code>bors try</code> it such that at least people developing on linux can avoid the rustc rebuild to try and hack on the REPL</p>



<a name="180375888"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180375888" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180375888">(Nov 10 2019 at 19:21)</a>:</h4>
<p>It also looks like the REPL repository is a "fork" of miri right now -- is that actually necessary? Or could we use miri as a library successfully as well?</p>



<a name="180384939"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180384939" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180384939">(Nov 10 2019 at 22:54)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> it should be in sync I believe with the REPL repo, unless I made some very minor edits... I forget. It's trivial to remedy in any case I think.</p>



<a name="180384940"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180384940" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180384940">(Nov 10 2019 at 22:55)</a>:</h4>
<p>Anyway glad you understand it better.</p>



<a name="180384953"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180384953" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180384953">(Nov 10 2019 at 22:55)</a>:</h4>
<p>hm, maybe I started fixing before I compiled or something, I'll try and take another look (rebasing would be good anyway, I presume)</p>



<a name="180384954"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180384954" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180384954">(Nov 10 2019 at 22:55)</a>:</h4>
<p>Already rebased the rustc changes several times though, only going to do it again to open new PRs when we're ready :-P</p>



<a name="180384956"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180384956" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180384956">(Nov 10 2019 at 22:55)</a>:</h4>
<p>and yes it's a fork of miri right now</p>



<a name="180384958"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180384958" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180384958">(Nov 10 2019 at 22:55)</a>:</h4>
<p>can't quite be used as a library unfortunately</p>



<a name="180384998"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180384998" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180384998">(Nov 10 2019 at 22:56)</a>:</h4>
<p>because I change the Miri "machine" usd.</p>



<a name="180384999"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180384999" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180384999">(Nov 10 2019 at 22:56)</a>:</h4>
<p>also, I add a new intrinsic</p>



<a name="180385002"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385002" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385002">(Nov 10 2019 at 22:56)</a>:</h4>
<p>but modulo those two things, I think it's basically the same base</p>



<a name="180385005"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385005" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385005">(Nov 10 2019 at 22:56)</a>:</h4>
<p>eventually it would be nice to add support to miri for those extensions</p>



<a name="180385007"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385007" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385007">(Nov 10 2019 at 22:56)</a>:</h4>
<p>should be relatively minor</p>



<a name="180385008"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385008" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385008">(Nov 10 2019 at 22:56)</a>:</h4>
<p>but no need to do it right now</p>



<a name="180385010"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385010" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385010">(Nov 10 2019 at 22:56)</a>:</h4>
<p>makes sense -- was hopeful that miri'd be flexible enough to allow that as a library, but makes sense :)</p>



<a name="180385080"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385080" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385080">(Nov 10 2019 at 22:59)</a>:</h4>
<p>yep, it's not far away at least</p>



<a name="180385089"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385089" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385089">(Nov 10 2019 at 22:59)</a>:</h4>
<p>and I think Ralf &amp; Oli would be okay with these minor changes to make it usable as a lib once they see a RPEL released</p>



<a name="180385090"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385090" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385090">(Nov 10 2019 at 22:59)</a>:</h4>
<p>REPL, even</p>



<a name="180385273"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385273" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385273">(Nov 10 2019 at 23:04)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> anyway I hope you can appreciate the design and implementation 80% or 90% without building (as it seems you can), but if you want to try getting it built, go for it... shouldn't be hard at all like I said, but if you're unsure about anything, ask me here.</p>



<a name="180385281"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385281" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385281">(Nov 10 2019 at 23:05)</a>:</h4>
<p>sure, thanks!</p>



<a name="180385330"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385330" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385330">(Nov 10 2019 at 23:06)</a>:</h4>
<p>it does still feel like it goes a bit too far (e.g., I find the integration into incremental unexpected, it seems like a more ad-hoc system would be fine) but it doesn't seem like a wrong approach either</p>



<a name="180385628"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385628" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385628">(Nov 10 2019 at 23:16)</a>:</h4>
<p>It's a neater, cleaner approach, and I think the one we want medium-term at the very least. :-)</p>



<a name="180385629"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385629" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385629">(Nov 10 2019 at 23:16)</a>:</h4>
<p>Without it, I think we'd be creating more work for ourselves (especially me) in the long-run.</p>



<a name="180385688"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180385688" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180385688">(Nov 10 2019 at 23:19)</a>:</h4>
<p>Miri has to serialise all its memory anyway, which uses something very similar to incr. comp. (or crate metadata to a lesser extent). The same mechanisms.</p>



<a name="180471923"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180471923" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180471923">(Nov 12 2019 at 00:34)</a>:</h4>
<p>s/Miri[/the REPL</p>



<a name="180624252"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180624252" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180624252">(Nov 13 2019 at 13:19)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> Any update? :-)</p>



<a name="180624270"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180624270" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180624270">(Nov 13 2019 at 13:19)</a>:</h4>
<p>I have not spent any more time this week I'm afraid</p>



<a name="180624276"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180624276" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180624276">(Nov 13 2019 at 13:19)</a>:</h4>
<p>have been pretty busy</p>



<a name="180624534"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180624534" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180624534">(Nov 13 2019 at 13:22)</a>:</h4>
<p>To be honest I'm not sure that I have much work left either, so not sure that there's anything necessarily waiting on me</p>



<a name="180633156"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180633156" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180633156">(Nov 13 2019 at 14:51)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> no prob. And yes, sounds fair. I can update the bit in the design dic about the parsing infrastructure... but then hopefully we can just FCP?</p>



<a name="180633659"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180633659" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180633659">(Nov 13 2019 at 14:56)</a>:</h4>
<p>Uh, okay. I'm not sure - probably makes sense to get buy-in from e.g. <span class="user-mention" data-user-id="119009">@eddyb</span> or <span class="user-mention" data-user-id="116009">@nikomatsakis</span> and only then FCP..</p>



<a name="180673416"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180673416" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180673416">(Nov 13 2019 at 21:13)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> yes, from one of them, ideally Niko. we can't launch FCPs anyway, as just contributors...</p>



<a name="180673489"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180673489" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180673489">(Nov 13 2019 at 21:14)</a>:</h4>
<p>But I appreciate your thoughts &amp; informal reviewing!</p>



<a name="180833834"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180833834" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180833834">(Nov 15 2019 at 13:57)</a>:</h4>
<p>Hey <span class="user-mention" data-user-id="124069">@Alexander Regueiro</span> -- haven't forgotten about this, but I have only limited bandwidth available for technical review on the compiler. This is definitely part of the reason that the design meetings exist, to try and parcel that bandwidth out in a structured way. Right now I'm trying to prioritize looking at the trait upcasting branch, for example, and other traits work. But I'll take another look at your revised proposal and try to share some thoughts.</p>



<a name="180833911"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180833911" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180833911">(Nov 15 2019 at 13:58)</a>:</h4>
<p>PS, if <a href="https://github.com/rust-lang/compiler-team/issues/213" target="_blank" title="https://github.com/rust-lang/compiler-team/issues/213">https://github.com/rust-lang/compiler-team/issues/213</a> is meant to be a meeting proposal, is there a reason you didn't use the template?</p>



<a name="180833917"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180833917" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180833917">(Nov 15 2019 at 13:58)</a>:</h4>
<p>I guess it doesn't matter, but it doesn't have the appropriate label, at minimum :)</p>



<a name="180833921"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180833921" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180833921">(Nov 15 2019 at 13:58)</a>:</h4>
<p>let me fix that</p>



<a name="180847987"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180847987" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180847987">(Nov 15 2019 at 16:26)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> Ah no, it wasn't. I thought the idea was just to do a design doc and FCP that, and only have a meeting if there are major objections? So as not to delay it (even)more. :-)</p>



<a name="180848018"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180848018" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180848018">(Nov 15 2019 at 16:27)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> Anyway fair enough. I appreciate the time you've given me on trait upcasting, and yes, let's prioritise this! If you can give me any thoughts, that  would be great, thanks.</p>



<a name="180848118"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122651-general/topic/REPL/near/180848118" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alexander Regueiro <a href="https://rust-lang.github.io/zulip_archive/stream/122651-general/topic/REPL.html#180848118">(Nov 15 2019 at 16:28)</a>:</h4>
<p>And while my personal time bandwidth is greater, I need to be honest that my mental exhaustion from having this drag on so long (let me emphasise, I'm definitely <em>not</em> blaming you or anyone else for this!) means this is getting a bit difficult for me now. But I'll see what I can do.</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>